// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'
import InfoParamClass from '@api/questionnaire/model/QuestionnaireCardDetailReq'
import AnswerClass from '@api/questionnaire/model/QuestionnaireSubmitReq'
import state from '@admin/views/Operation/Questionnaire/QuestionnaireList/store/state'
import API from './API'

// ============================== 导出状态集 ============================== //

export default {
  // —————————————————————————————— 常量状态 —————————————————————————————— //

  /**
   * 接口
   */
  API,

  /**
   * 映射
   */
  MAP: {
    WORD: '问卷', // 词语
    ONE: '回答', // 详情
  },

  /**
   * 字典
   */
  DICT: {
    /**
     * 类型
     */
    TYPE: state.DICT.TYPE,
  },

  /**
   * 首要开关
   *
   * 1. 初始化完成时调用
   * 2. 提交后刷新时调用
   */
  MAIN_START: '', // 'startInfo' 或 'startList' 或 'startOne' 或 ''

  /**
   * 初始信息参数
   *
   * 1. 初始存在，才能响应
   * 2. CORE.mixStore(store) 时使用
   * 3. setInfoParam() 重置时使用
   */
  INIT_INFO_PARAM: CORE.initObj(InfoParamClass, {
    //
  }),

  /**
   * 初始信息
   *
   * 1. 初始存在，才能响应
   * 2. setInfo() 合并时使用
   */
  INIT_INFO: state.INIT_ONE,

  /**
   * 初始单项
   *
   * 1. 初始存在，才能响应
   * 2. CORE.mixStore(store) 时使用
   * 3. setOne() 重置时使用
   * 4. openAdd() 新增时使用
   */
  INIT_ONE: {
    id: '', // 问卷 ID

    answerId: '', // 回答人 uaaUserId

    instanceId: '', // 浙政厅卡片 ID

    answer: CORE.initObj(AnswerClass, { // 答卷结果
      //
    }),

    no_1: undefined, // 第一题回答 (后续同理)
  },
}
